The objective for rate adaptation in a wireless network is to assign the largest possible transmission rates to nodes in a way that multiple access interference (MAI) is minimized while the receiving nodes are still able to decode the transmitted packets under the current channel state. Rate adaptation constitutes a key aspect of the functionality of the IEEE 802.11 physical layer (PHY).
Designing a rate adaptation algorithm that performs well in diverse settings is challenging due to the complex physical-layer effects of wireless links, including interference, attenuation, and multi-path fading. While many solutions exist addressing the rate adaptation problem, the design of an efficient solution applicable to multiple diverse scenarios has proven to be elusive. This is due in part to the complex nature of a wireless channel and its interaction with the channel contention caused by users as they access the shared resource, plus the fact that network-level steps taken by nodes (e.g., attempting to use alternate routes around congestion hot spots) may induce additional interference by making more nodes relay packets.
MAI and natural phenomena associated to radio wave propagation are the key reasons for throughput reduction in wireless networks. Adapting to them is complicated by the unpredictability of interference. A network may be subject to little or a lot of interference, depending on the characteristics of the environment, the network density, and node movement, and environmental mobility. A major concern with MAI is that it increases very rapidly with node density and impacts the network layer, which causes MAI to spread over multiple hops as nodes attempt to route around congestion.
Rate adaptation schemes can be classified based on whether explicit or implicit feedback to the transmitters is used. Explicit feedback requires the receiver to explicitly communicate the channel condition on the receiver's side back to the sender. Implicit feedback looks at acknowledgment (ACK) packets or other channel information (i.e., received signal strength indicator (RSSI)) to infer the channel conditions on the receiver's side. We use the term rate control and rate adaptation interchangeably.
Explicit feedback approaches can be viewed as receiver-driven rate adaptation, because the receiver dictates the rate that should be used. The receiver obtains its current channel condition and relays this information back to the sender.
Receiver Based Auto-Rate (RBAR) selects the bit rate based on the S/N measurements. Upon processing a request to send (RTS) packet, the receiver calculates the highest bitrate and piggybacks this selected bit rate on the clear to send (CTS) packet. However, RBAR needs an accurate mapping between S/N values rates for different hardware.
Collision-Aware Rate Adaptation (CARA) combines the RTS/CTS packets for Clear Channel Assessment (CCA) functionality to differentiate frame collisions and frame failures. CARA requires too many control packets.
Effective SNR presents a delivery model by taking RF channel state as input and predicts packet delivery for the links based on the configuration of the Network Interface Controller (NIC). It takes advantage of the channel state information (CSI) either from feedback or estimated from the reverse path and computes its effective SNR by averaging the subcarrier BERs in order to find the corresponding SNR, where BER is a function of the symbol SNR and OFDM modulations. The drawback of using CSI is that SNR needs to be measured instantaneously, and feedback delay may not allow mode adaptation on an instantaneous basis. Because CSI itself is an approximation of the wireless channel, it may need to incorporate other information, such as higher-order statistics of SNR and Packet/Bit Error Rate or both for improving its accuracy and robustness.
In addition to incurring overhead by requiring the receiver to relay its channel state information back to the sender, an explicit approach may encounter the possibility of stale feedback due to the dynamic channel conditions during data transmissions. If the channel coherence time is very short, the receiver may not be able to relay accurate information to the sender. In the worst-case scenario, the receiver ends up sending feedback information to the sender continuously, which occupies the channel with feedback packets and prevents the sender from transmitting data. Although explicit feedback can work well if the channel conditions do not change rapidly, that is often not the case.
Implicit feedback approaches can be viewed as a sender-driven rate adaptation, given that the sender adapts its rate by inferring the channel conditions on the receiver side.
The Automatic Rate Fallback (ARF) scheme is one of the earliest rate control algorithms designed for WaveLAN-II. Upon encountering a second missed acknowledgement of data packets, then it falls back to a lower rate. A counter is used to track the number of good and bad acknowledgement packets for upgrading rates accordingly. However, the limitation of ARF is that it was designed for a few rates and does not work well with current IEEE 802.11 implementation.
Onoe is a credit-based rate control algorithms originally developed by Atheros. It extends ARF to current IEEE 802.11. However, its limitation is that the credit-based system tends to be too conservative and often gets stuck using lower rates.
The Adaptive Multi Rate Retry (AMRR) scheme introduces a Binary Exponential Back-off and adaptive threshold value depends on the feedback obtained from the number of attempted packets. The limitation of this approach is that binary exponential back-off tends to be too conservative in adapting rates.
The Sample rate control algorithm begins by sending the data at the highest bit rate. Upon encountering four successive failures, the scheme decreases the bitrate until it finds a usable bitrate. At every tenth data packet, the algorithm picks a random bitrate that may do better than the current one. MINSTREL, a widely deployed and popular Linux rate control, is an improved version of Sample, which takes into account the exponential weighted moving average statistics for sorting throughput rates. Unfortunately, MINSTREL still spends 10 percent of transmitted frames in trying random rates when its current rate is working perfectly.
Robust Rate Adaptation Algorithm (RRAA) uses short-term loss ratios to opportunistically adapt the rates. Like CARA, it employs an RTS filter to prevent collision losses from rate decreases. However, enabling RTS filtering upon encountering failed transmissions might not work as well as simply transmitting the data at lower rates. Besides, this adds an additional control overhead. Due to the nature of air interface, it is complex and difficult to predict the cause of the packet collisions.
Multi-Rate Adaptation with Interference and Congestion Awareness (MAICA) adapts the data rates used for transmission based on packet loss and a credit-based system. MAICA is inspired by the use of additive increase, multiplicative decrease policies AIMD congestion control mechanism and adopts it for the rate adaptation in wireless environment. The MAICA is limited by the need to tune several parameters used for its credit-based system, which reduces its ease of use and deployment.